package aphorism;

import javax.swing.JComboBox;

/**
 * Bietet Funktionalitaet fuer abgeleitete Klasse, ein StringPanel anzusprechen,
 * <br>
 * welchem dann die ausgewahlten Parameter in der ComboBox uebergeben werden.
 *
 * @author Patrick Bauer
 * @version 1.0
 */
abstract public class AbstractSelect extends JComboBox {
    /**
     * Ueber diese Variable wird das uebergebene StringPanel angesprochen.
     */
    private StringPanel stringPanel;

    /**
     * Setzt das Stringpanel Attribut und ruft die Funktion zum Default-Eintrag auf.
     *
     * @param stringPanel das zu nutzende StringPanel
     */
    public void setStringPanel(StringPanel stringPanel) {
        this.stringPanel = stringPanel;
        this.setDefaultOption();
    }

    /**
     * Liefert das aktuelle StringPanel
     * @return das aktuelle StringPanel
     */
    public StringPanel getStringPanel() {
        return stringPanel;
    }

    /**
     * Leere Methode die von Kindklassen ueberschrieben werden kann, um Default-Werte fuer den eigenen Parameter zu uebergeben.
     */
    protected void setDefaultOption() {}
    
}
